1. Field of the Invention
The present invention relates to bar code reader for reading bar code information and, ore particularly, to a bar code reader capable of storing bar codes in a memory while using only a small storage capacity.
2. Description of the Related Art
Several different types of bar codes have been conventionally used in the management f, e.g., various goods and baggages, and recently bar codes called `two-dimensional bar codes` are beginning t be put into practical use. Information is recorded in two directions, i.e., the row and column directions in these two-dimensional bar codes, whereas information is written in only one direction in convention bar codes, i.e., one-dimensional bar codes. The two-dimensional bar codes, therefore, have storage capacities larger than those of the conventional bar codes. FIG. 1A shows a JAN code as an example of the convent bar codes, and FIG. 1B shows a PDF417 code as an e of the two-dimensional bar codes. Code16K, DATA CODE, and Vericode are also known as the two-dimensional bar codes in addition to the PDF417.
The following system has been conventionally used as a method of reading these two-dimensional bar codes. That is, the bar code of a bar code label is first imaged by an imaging unit, such as a CCD, through an optical system, and the resulting output signal is then supplied to an analog processor. The analog processor performs, e.g., amplification, sample-and-hold, and analog-to-digital conversion for the signal, and supplies information about the reflection luminances of bars and spaces of the bar code image to a frame memory, as digital information. A data processor constituted by, e.g., a CPU decodes the bar code information by using the information of the frame memory. The decoded bar code information is supplied to a host computer or the like and is thereby presented to operator.
The decoding method performed by he data processor will be described below. First, the data processor determines whether the image data obtained through imaging is part of a bar or a space. The data processor determines this while tracing the image data in the frame memory in the direction of the Ted of bar code information, thereby obtaining the relationship in distance between bars and spaces. Using this relationship, the data processor decodes the bar code in accordance with the symbology (symbol standard) of that bar code.
The imaging unit of the above CCD or the like can be realized by either a linear sensor (1DCCD) in which imaging elements are arranged on a line or an area sensor (2DCCD) in which imaging elements are arranged in an area. When the linear sensor is used, it is necessary to trace an imaging area on a bar code to thereby pick up the image information of the whole par code. In the case of the area sensor, it is possible to read a whole bar code image at once because the whole bar code image can be picked up by an imaging area.
The number of pixels of a currently, widely used area sensor is about 380,000 in the case of the 2DCCD. Generally, the arrangement of these 380,000 pixels is 768 pixels.times.493 pixels (rows.times.columns). Area sensors with larger numbers of pixels are of course available, but they are very expensive. Since, however, area sensors with this 380,000-pixel arrangement are also relatively expensive, inexpensive scanners (bar code readers) are difficult to manufacture when considering the use of these area sensors.
In addition, in accordance with the sampling theorem, an image of each minimum module of a bar code present on the object surface of an optical system must be formed on an area with at least two pixels, ideally; five to ten pixels on an area sensor of an image plane. (The minimum modules are minimum units constituting bars and spaces, and areas as shown in FIG. 1C are the minimum modules.) For this reason, area sensors with the 380,000-pixel arrangement, in which the number of pixels in the row direction is small, cannot read two-dimensional bar codes with high densities and large dimensions. These area sensors are therefore not so practical.
To solve these problems, the use of linear sensors which are inexpensive and have large numbers of pixels is advantageous. The frame memories as described above, however, are necessary even when these linear sensors are used. As an example, storing image data of 500 lines by using a linear sensor with 2,048 pixels requires a memory capacity of about 1M words. Since a memory with a high access speed is required to shorten the decoding time, this type of a memory, with a capacity of 1M words, becomes expensive.
As described above, it has been difficult for the conventional techniques to manufacture inexpensive two-dimensional bar code readers.